草庐IT

python - Flask Python 模型验证

全部标签

ruby-on-rails - 2个字段之间的rails presence条件验证

这里是第一个Rails程序。我想比要求更进一步,例如,允许地址簿中的条目接受名字或姓氏或两者。换句话说,我想首先或最后验证validate_presence_of,并且只有在两者都缺失时才抛出异常,这在C++中是一件super简单的事情,但语法在Ruby中是什么样子的呢? 最佳答案 如果first_name为空,您不能运行条件验证last_name的存在吗?如果名字不为空,则不会运行验证,但如果为空,则确保姓氏也不为空...validates:last_name,:presence=>true,:if=>"first_name.bl

ruby-on-rails - 防止为每个评论调用 upvote 模型

我有三个模型:User、Comment和Upvote。User-to-Comment是一对多的关系,Comment-to-Upvote是一对多的关系,而User-to-Upvote是一对多的关系。我想做一些类似于在Stackoverflow上进行投票的事情。因此,当您投赞成票/反对票时,箭头将突出显示并保持突出显示状态,即使您在几天/几周后刷新页面或返回页面也是如此。目前我正在这样做:voted?方法在哪里:defself.voted?(user_id,comment_id)find_by(comment_id:comment_id,user_id:user_id).present?e

ruby-on-rails - 我应该测试模型之间的关联吗?

我应该为两个模型之间的关联编写测试吗?我刚刚在我的第一个Rails项目中找到这段代码,这似乎不正确,因为没有关联会导致错误而不是失败。那么我应该如何以及在哪里正确地测试它们呢?require'test_helper'classVocabTest 最佳答案 不,您不需要专门对关联进行单元测试,即使您的目标是完全测试您的应用程序(您应该这样做)。协会只是实现;它们的存在是为了支持行为,并且测试该行为总是完全测试关联的存在。关联的单独单元测试不会增加任何值(value)。如果您正在实践测试驱动开发并且正在实现一些需要关联的行为,您可能会发

ruby - 将变量传递给 Liquid 模板中的模型实例方法

这个周末我一直在研究Liquid模板引擎,我想知道以下是否可行。假设我在Blog模型中有一个latest_posts方法,我可以将一个整数传递给该方法以获取最新的N篇文章。是否可以在液体模板中使用该方法?例如:classBloghas_many:postsdeflatest_posts(n)posts.latest(n)#usinganamedscopeenddefto_liquid(*args){'all_posts'=>posts.all,#allowsmetouse{%forpostsinblog.all_posts%}'last_post'=>post.last,#allows

ruby - 从外部 gem 扩充模型

我正在使用refinerycms在我们的站点让技术人员较少的更新内容。在gem中,它们有一个Page类,用于映射站点上的每个顶级页面。我想在此Page类上使用acts_as_taggablegem。现在我可以将acts_as_taggle声明直接添加到page.rb文件中,但是我必须维护一个单独的git存储库来跟踪我的版本和官方版本之间的差异。基于SO上的其他一些问题,我创建了一个初始化程序和扩展,如下所示:lib/page_extensions.rb:modulePantsmoduleExtensionsmodulePagemoduleClassMethodsdefadd_tagga

ruby - 在 ruby​​ 中验证电话号码

验证北美电话号码的规则是什么?另外,有没有我可以使用的regex?有gem可以做到这一点吗?这里有几条我想到的规则一个10位数字没有特殊字符正数 最佳答案 有很多gem可以为您做到这一点。看看:http://rubygems.org/search?utf8=%E2%9C%93&query=phone+number这个看起来会满足您的需要——它实际上实现了一个正则表达式来验证电话号码:http://rubygems.org/gems/validates_phone_number对于美国、加拿大(百慕大、巴哈马...等和所有+1号码),

ruby-on-rails - 一次交易下创建和更新多个模型

我想知道在Rails中是否可以在一个事务下进行多次更新和创建。我想创建一个no。来自任何数组的Products。但是对于每个产品,我还需要为其创建Company和Category。所以思路是这样的--Startatransaction//createacompany//createacategorywhileproduct_list{//createaproductwithcompanyandcategorycreatedabove}--endatranscation因此,如果任何创建失败,我希望回滚较早的更新/创建。 最佳答案 b

ruby-on-rails - 使用 OpenURI 或 net/http 的 Ruby 代理身份验证 GET/POST

我正在使用ruby​​1.9.3并尝试使用open-uri获取url并尝试使用Net:HTTP发布我正在尝试对两者使用代理身份验证:尝试使用net/http执行POST请求:require'net/http'require'open-uri'http=Net::HTTP.new("google.com",80)headers={'User-Agent'=>'Ruby193'}resp,data=http.post("/","name1=value1&name2=value2",headers)putsdata对于open-uri我无法执行POST我使用:data=open("http:

ruby - 仅在一页上显示 Sinatra 基本 HTTP 身份验证

知道如何让SinatraHTTP身份验证仅显示在模块化Sinatra应用程序的一个页面上吗? 最佳答案 添加到@iain答案,因为您已经询问了HTTP身份验证(我假设是基本身份验证)。classMyApp 关于ruby-仅在一页上显示Sinatra基本HTTP身份验证,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/14430452/

ruby-on-rails - 在 Active Record 回调中验证日语字符

我有一个日文项目需要验证半角和全角日文字符,半角允许14个字符,全角允许7个字符。有人知道如何实现吗?现在在我的模型上classCustomervalidates_length_of:name,:maximum=>14end不是一个好的选择我目前使用的是ror2.3.5全角和半角都可以使用 最佳答案 首先,全角(全角)和半角(半角)的概念只存在于日语中的两种字符:罗马字符(即拉丁文)片假名字符韩语韩文有类似的概念,但日语平假名和汉字没有。对于片假名,半角字符有自己的Unicode代码点,并且呈现为全角字符一半的大小,尽管它们在其他方